Zadig 文档
Zadig
教程
博客
论坛
关于
中文英文
Zadig
教程
博客
论坛
关于
Zadig v3.4
Loading...
     编辑文档
     反馈问题
     社区讨论

    本页导航

    环境

    # 查看环境列表

    # 测试环境

    适用于 K8s YAML 项目。

    请求

    GET /openapi/environments?projectKey=<项目标识>
    
    1

    Query 参数说明

    参数名说明类型必填
    projectKey项目标识string是

    返回示例

    点击查看
    [
            {
                "env_name": "dev",
                "cluster_id": "0123456789abcdef12345678",   # K8s 集群 ID
                "namespace": "k8s-fansitest-env-dev",       # K8s 命名空间
                "production": false,                        # 是否是生产环境
                "registry_id": "630c7ad700430c131062e245",  # 镜像仓库 ID
                "status": "success",                        # 环境状态,包括 success(正常)、failed(失败)、creating(正在创建)、updating(更新中)、deleting(删除中)、unknown(未知)、unstable(运行不稳定)、sleeping(睡眠中)
                "update_by": "admin",                       # 环境更新者
                "update_time": 1690186199                   # 最后一次更新时间,Unix 时间戳格式
            },
            {
                "env_name": "dev5",
                "cluster_id": "0123456789abcdef12345678",
                "namespace": "ai-test-2-env-dev",
                "production": false,
                "registry_id": "6350be2b4503905e98b4b771",
                "status": "success",
                "update_by": "admin",
                "update_time": 1690181832
            }
    ]
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22

    # 生产环境

    适用于 K8s YAML 项目。

    请求

    GET /openapi/environments/production?projectKey=<项目标识>
    
    1

    Query 参数说明

    参数名说明类型必填
    projectKey项目标识string是

    返回示例

    点击查看
    [
            {
                "env_name": "dev",
                "cluster_id": "0123456789abcdef12345678",   # K8s 集群 ID
                "namespace": "k8s-fansitest-env-dev",       # K8s 命名空间
                "production": true,                        # 是否是生产环境
                "registry_id": "630c7ad700430c131062e245",  # 镜像仓库 ID
                "status": "success",                        # 环境状态,包括 success(正常)、failed(失败)、creating(正在创建)、updating(更新中)、deleting(删除中)、unknown(未知)、unstable(运行不稳定)、sleeping(睡眠中)
                "update_by": "admin",                       # 环境更新者
                "update_time": 1690186199                   # 最后一次更新时间,Unix 时间戳格式
            },
            {
                "env_name": "dev5",
                "cluster_id": "0123456789abcdef12345678",
                "namespace": "ai-test-2-env-dev",
                "production": true,
                "registry_id": "6350be2b4503905e98b4b771",
                "status": "success",
                "update_by": "admin",
                "update_time": 1690181832
            }
    ]
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22

    # 查看环境详情

    适用于 K8s YAML 项目。

    # 测试环境

    请求

    GET /openapi/environments/<环境标识>?projectKey=<项目标识>
    
    1

    Query 参数说明

    参数名说明类型必填
    projectKey项目标识string是

    返回示例

    点击查看
    {
        "project_key": "simple-demo",              # 项目标识
        "env_key": "dev",                          # 环境标识
        "update_by": "admin",                       # 环境更新者
        "update_time": 1689933256,                  # 最后一次更新时间,Unix 时间戳格式
        "cluster_id": "0123456789abcdef12345678",   # K8s 集群 ID
        "namespace": "simple-demo-env-dev",         # K8s 命名空间
        "registry_id": "630c7ad700430c131062e245",  # 镜像仓库 ID
        "global_variables": [                       # 全局变量列表
            {
                "key": "cpuLimit",                  # 变量的键
                "value": "1000m",                   # 变量的值
                "type": "string",                   # 变量的类型,包括 string、bool、enum、yaml 四种
                "options": [],                      # 变量的可选值,当 type 为 enum 时该字段有意义
                "desc": "CPU 资源限制",              # 变量的描述信息
                "related_services": ["service1"]    # 变量关联的服务
            }
        ],
        "services": [                               # 服务列表
            {
                "service_name": "service2",         # 服务名称
                "containers": [                     # 服务组件信息
                    {
                        "name": "myapp-1",          # 服务组件名称
                        "image": "koderover.tencentcloudcr.com/test/myapp-1:20230721164449-6-main", # 服务组件镜像
                        "image_name": "myapp-1"     # 服务组件镜像名称
                    }
                ],
                "variable_kvs": [                   # 服务变量列表
                    {
                        "key": "env1",
                        "value": "demo",
                        "type": "string",
                    }
                ],
                "status": "running",               # 服务状态,包括 running(正在运行)、unstable(运行不稳定)、unstart(未开始)、failed(失败)、pending(挂起中)、unknown(未知)
                "type": "k8s"                      # 项目类型,恒定为 k8s
            }
        ],
        "status": "success"                        # 环境状态,包括 creating(创建中)、updating(更新中)、deleting(删除中)、succeeded(正常)、error(内部错误)、running(正在运行)、unstable(运行不稳定)、sleeping(睡眠中)、unknown(未知)
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41

    # 生产环境

    请求

    GET /openapi/environments/production/<环境名称>?projectKey=<项目标识>
    
    1

    Query 参数说明

    参数名说明类型必填
    projectKey项目标识string是

    返回示例

    点击查看
    {
        "project_key": "simple-demo",              # 项目标识
        "env_key": "prod",                         # 环境标识
      	"env_name":"prod",												 # 环境名称
        "update_by": "admin",                       # 环境更新者
        "update_time": 1689933256,                  # 最后一次更新时间,Unix 时间戳格式
        "cluster_id": "0123456789abcdef12345678",   # K8s 集群 ID
        "namespace": "simple-demo-env-prod",        # K8s 命名空间
        "registry_id": "630c7ad700430c131062e245",  # 镜像仓库 ID
        "global_variables": [                       # 全局变量列表
            {
                "key": "cpuLimit",                  # 变量的键
                "value": "1000m",                   # 变量的值
                "type": "string",                   # 变量的类型,包括 string、bool、enum、yaml 四种
                "options": [],                      # 变量的可选值,当 type 为 enum 时该字段有意义
                "desc": "CPU 资源限制",              # 变量的描述信息
                "related_services": ["service1"]    # 变量关联的服务
            }
        ],
        "services": [                               # 服务列表
            {
                "service_name": "service2",         # 服务名称
                "containers": [                     # 服务组件信息
                    {
                        "name": "myapp-1",          # 服务组件名称
                        "image": "koderover.tencentcloudcr.com/test/myapp-1:20230721164449-6-main", # 服务组件镜像
                        "image_name": "myapp-1"     # 服务组件镜像名称
                    }
                ],
                "variable_kvs": [                   # 服务变量列表
                    {
                        "key": "env1",
                        "value": "demo",
                        "type": "string",
                    }
                ],
                "status": "running",               # 服务状态,包括 running(正在运行)、unstable(运行不稳定)、unstart(未开始)、failed(失败)、pending(挂起中)、unknown(未知)
                "type": "k8s"                      # 项目类型,恒定为 k8s
            }
        ],
        "status": "success"                        # 环境状态,包括 creating(创建中)、updating(更新中)、deleting(删除中)、succeeded(正常)、error(内部错误)、running(正在运行)、unstable(运行不稳定)、sleeping(睡眠中)、unknown(未知)
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42

    # 查看环境服务详情

    # 测试环境

    请求

    GET /openapi/environments/<环境标识>/services/<服务名称>
    
    1

    Query 参数说明

    参数名说明类型必填
    projectKey项目标识string是
    workLoadtype可选值如下:
    StatefulSet
    Deployment
    CronJob
    string是

    返回示例

    点击查看
    {
      "service_name": "service1",
      "scales": [
        {
          "name": "service1",
          "type": "Deployment",
          "images": [
            {
              "name": "service1",
              "image": "koderover.tencentcloudcr.com/test/service1:20231214162411",
              "image_name": "service1"
            }
          ],
          "pods": [
            {
              "kind": "ReplicaSet",
              "name": "service1-5b94c8f98f-hsqfl",
              "status": "Running",
              "age": "34d",
              "createtime": 1704444315,
              "ip": "10.200.2.76",
              "labels": {
                "app.kubernetes.io/instance": "service1",
                "app.kubernetes.io/name": "yaml",
                "pod-template-hash": "5b94c8f98f",
                "s-product": "yaml",
                "s-service": "service1"
              },
              "containers": [
                {
                  "name": "service1",
                  "image": "koderover.tencentcloudcr.com/test/service1:20231214162411",
                  "restart_count": 0,
                  "status": "running",
                  "ready": true,
                  "ports": [
                    {
                      "containerPort": 20211,
                      "protocol": "TCP"
                    }
                  ],
                  "message": "",
                  "reason": "",
                  "started_at": 1704444316
                }
              ],
              "node_name": "172.16.0.46",
              "host_ip": "172.16.0.46",
              "enable_debug_container": false,
              "pod_ready": true,
              "containers_ready": true,
              "containers_message": ""
            }
          ],
          "replicas": 1,
          "zadigx_release_type": "",
          "zadigx_release_tag": ""
        }
      ],
      "ingress": [],
      "service_endpoints": [
        {
          "name": "service1",
          "age": "119d",
          "labels": {
            "app.kubernetes.io/instance": "service1",
            "app.kubernetes.io/name": "yaml",
            "s-product": "yaml",
            "s-service": "service1"
          },
          "endpoints": [
            {
              "service_name": "service1",
              "service_port": 20211,
              "node_port": 30593
            }
          ]
        }
      ],
      "cron_jobs": [],
      "namespace": "yaml-env-dev",
      "env_name": "dev",
      "product_name": "yaml",
      "group_name": ""
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85

    # 生产环境

    请求

    GET /openapi/environments/production/<环境标识>/services/<服务名称>
    
    1

    Query 参数说明

    参数名说明类型必填
    projectKey项目标识string是
    workLoadtype可选值如下:
    StatefulSet
    Deployment
    CronJob
    string是

    返回示例

    点击查看
    {
      "service_name": "service1",
      "scales": [
        {
          "name": "service1",
          "type": "Deployment",
          "images": [
            {
              "name": "service1",
              "image": "koderover.tencentcloudcr.com/test/service1:20231214162411",
              "image_name": "service1"
            }
          ],
          "pods": [
            {
              "kind": "ReplicaSet",
              "name": "service1-5b94c8f98f-hsqfl",
              "status": "Running",
              "age": "34d",
              "createtime": 1704444315,
              "ip": "10.200.2.76",
              "labels": {
                "app.kubernetes.io/instance": "service1",
                "app.kubernetes.io/name": "yaml",
                "pod-template-hash": "5b94c8f98f",
                "s-product": "yaml",
                "s-service": "service1"
              },
              "containers": [
                {
                  "name": "service1",
                  "image": "koderover.tencentcloudcr.com/test/service1:20231214162411",
                  "restart_count": 0,
                  "status": "running",
                  "ready": true,
                  "ports": [
                    {
                      "containerPort": 20211,
                      "protocol": "TCP"
                    }
                  ],
                  "message": "",
                  "reason": "",
                  "started_at": 1704444316
                }
              ],
              "node_name": "172.16.0.46",
              "host_ip": "172.16.0.46",
              "enable_debug_container": false,
              "pod_ready": true,
              "containers_ready": true,
              "containers_message": ""
            }
          ],
          "replicas": 1,
          "zadigx_release_type": "",
          "zadigx_release_tag": ""
        }
      ],
      "ingress": [],
      "service_endpoints": [
        {
          "name": "service1",
          "age": "119d",
          "labels": {
            "app.kubernetes.io/instance": "service1",
            "app.kubernetes.io/name": "yaml",
            "s-product": "yaml",
            "s-service": "service1"
          },
          "endpoints": [
            {
              "service_name": "service1",
              "service_port": 20211,
              "node_port": 30593
            }
          ]
        }
      ],
      "cron_jobs": [],
      "namespace": "yaml-env-dev",
      "env_name": "dev",
      "product_name": "yaml",
      "group_name": ""
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85

    # 新建环境

    适用于 K8s YAML 项目。

    # 测试环境

    请求

    POST /openapi/environments?projectKey=<项目标识>
    
    1

    Body 参数说明

    参数名说明类型必填
    env_key环境标识string是
    cluster_idK8s 集群 IDstring是
    namespaceK8s 命名空间string是
    registry_id镜像仓库 IDstring是
    env_configs环境配置[]EnvConfig否
    global_variables全局变量[]GlobalVariable否
    services服务列表[]Service否

    EnvConfig 参数说明

    参数名说明类型必填
    yaml_data环境配置的 YAML 内容string是
    common_env_cfg_type环境配置的类型,可选值如下:
    ConfigMap
    Ingress
    Secret
    PVC
    string是

    GlobalVariable 参数说明

    参数名说明类型必填
    key变量的键string是
    value变量的值string是

    Service 参数说明

    参数名说明类型必填
    service_name服务名称string是
    type服务类型,指定为 k8s 即可string是
    containers服务的镜像信息[]Container是
    variable_kvs服务变量配置[]VariableKV否

    Container 参数说明

    参数名说明类型必填
    image完整的镜像地址,比如:koderover.demo.com/public/service1:lateststring是
    image_name镜像名称string是
    name服务组件名称string是

    VariableKV 参数说明

    参数名说明类型必填
    key变量的键string是
    value变量的值string和 use_global_variable 参数二选一
    use_global_variable是否使用全局变量bool和 value 参数二选一

    Body 参数示例

    点击查看
    {
        "env_key": "dev7",
        "cluster_id": "0123456789abcdef12345678",
        "namespace": "ai-test-2-env-dev",
        "registry_id": "6350be2b4503905e98b4b771",
        "is_public": true,
        "global_variables": [
            {
                "key": "cpuLimit",
                "value": "15m"
            }
        ],
        "services": [
            {
                "service_name": "service2",
                "type": "k8s",
                "containers": [
                    {
                        "image": "koderover.tencentcloudcr.com/test/service2:20230730070002-38-main",
                        "image_name": "service2",
                        "name": "service2"
                    }
                ],
                "variable_kvs": [
                    {
                        "key": "cpu",
                        "value": "8m"
                    },
                    {
                        "key":"cpuLimit",
                        "value":"15m"
                    }
                ]
            }
        ],
        "env_configs": [
            {
                "yaml_data": "apiVersion: v1\ndata:\n  root-cert.pem: |\n    -----BEGIN CERTIFICATE-----\n    MIIC/TCCAeWgAwIBAgIRAISZur/+Sm1i2dv4w5qWhy0wDQYJKoZIhvcNAQELBQAw\n    GDEWMBQGA1UEChMNY2x1c3Rlci5sb2NhbDAeFw0yMjA4MTUwMjM5MTdaFw0zMjA4\n    MTIwMjM5MTdaMBgxFjAUBgNVBAoTDWNsdXN0ZXIubG9jYWwwggEiMA0GCSqGSIb3\n    DQEBAQUAA4IBDwAwggEKAoIBAQDQWPcRpknooTvvR8rg9XOXtOV2XyW2mDCBhQ0E\n    THTQI17l5UK+AkhifJwUeGcc6KsZvBff7ksf5eQ6e1XBkwhEFTn0QBNTQwzVH/gz\n    dVLB/SYgDKZyUBq3N2E0V1tYsrXE/Mc5qRcnBwscAdOcH5gpW3ZxfRUr7t40DY0H\n    Im8RIajIB7UyT9lo+unaPozF5AuIN4ylv6XGcO1voXimCXNg5r2T/ATTA/vqJcS2\n    ZlaT/85+cZCycu8ZwZaVNgxlyjE1CgUBEdMxy0svMXpJvDondEZEPfZVuB1X2FUL\n    fczThsA7XmBvBYKXoKD7cAGlJS1I2nkfxXk+dkN+tolDQA6NAgMBAAGjQjBAMA4G\n    A1UdDwEB/wQEAwICBDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBS1JbJ810a/\n    +KEqd78PtqTKRu+iqDANBgkqhkiG9w0BAQsFAAOCAQEAy833M/pdnLkKmZK9NaTp\n    Ten5TQdxhRlPuG3dBfU45VXQ0IhgO7Er0caPagMaVPkqdfuUcd5sT5lfEiJUtt3B\n    bOhyPK09GkD7muhO7Bx1o+qAPXkCjf0JRcAgQcpZ5va72V6bB8CJ5+6YoQV4eQGa\n    mF80vbzPx3zR6At+3JAZaMhbXItBWJi5ULIGMaJ3JRUvqBMG1jsZdeqOa/fTjVc1\n    6gdX/O9eZjfRdnUiBv4kCD00nr74crXfvAmQGDX/EbNqYGLNHqAdqRgibUYowvEC\n    9gaZfvKU4lOaWYnwE4RlJ1Q6uhVgH45fFiq8pAeflSh56TLbjRfi/VM2lg3GN+cm\n    6g==\n    -----END CERTIFICATE-----\nkind: ConfigMap\nmetadata:\n  creationTimestamp: \"2023-07-06T08:01:16Z\"\n  labels:\n    istio.io/config: \"true\"\n  name: istio-ca-root-cert-test\n  namespace: ai-test-2-env-dev\n  selfLink: /api/v1/namespaces/ai-test-2-env-dev/configmaps/istio-ca-root-cert\n  uid: 767723b1-8bb2-4c51-92fd-d224bf0c0dc5\n",
                "common_env_cfg_type": "ConfigMap"
            }
        ]
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42

    返回

    {
      "message": "success"
    }
    
    1
    2
    3

    # 生产环境

    请求

    POST /openapi/environments/production?projectKey=<项目标识>
    
    1

    Body 参数说明

    参数名说明类型必填
    env_key环境标识string是
    env_name环境名称string否
    cluster_idK8s 集群 IDstring是
    namespaceK8s 命名空间string是
    registry_id镜像仓库 IDstring是

    返回

    {
      "message": "success"
    }
    
    1
    2
    3

    # 编辑环境

    适用于 K8s YAML 项目。

    # 测试环境

    请求

    PUT /openapi/environments/<环境标识>?projectKey=<项目标识>
    
    1

    Body 参数说明

    参数名说明类型必填
    registry_id镜像仓库 IDstring是

    返回

    {
      "message": "success"
    }
    
    1
    2
    3

    # 生产环境

    请求

    PUT /openapi/environments/production/<环境标识>?projectKey=<项目标识>
    
    1

    Body 参数说明

    参数名说明类型必填
    registry_id镜像仓库 IDstring否
    env_name环境名称string否

    返回

    {
      "message": "success"
    }
    
    1
    2
    3

    # 删除环境

    适用于 K8s YAML 项目。

    # 测试环境

    请求

    DELETE /openapi/environments/<环境标识>?projectKey=<项目标识>&isDelete=true
    
    1

    Query 参数说明

    参数名说明类型必填
    projectKey项目标识string是
    isDelete是否删除环境对应的 K8s 命名空间和服务bool是

    返回

    {
      "message": "success"
    }
    
    1
    2
    3

    # 生产环境

    请求

    DELETE /openapi/environments/production/<环境标识>?projectKey=<项目标识>
    
    1

    Query 参数说明

    参数名说明类型必填
    projectKey项目标识string是

    返回

    {
      "message": "success"
    }
    
    1
    2
    3

    # 添加服务

    适用于 K8s YAML 项目。

    # 测试环境

    请求

    POST /openapi/environments/service/yaml?projectKey=<项目标识>
    
    1

    Body 参数说明

    参数名说明类型必填
    env_key环境标识string是
    service_list需要加入环境的服务列表[]Service是

    Service 参数说明

    参数名说明类型必填
    service_name服务名称string是
    variable_kvs服务变量列表[]VariableKV否

    Body 参数示例

    点击查看
    {
      "env_key": "dev",
      "service_list": [
        {
          "service_name": "service2",
          "variable_kvs": [
            {
              "key": "cpuLimit",
              "use_global_variable":true
            },
            {
              "key": "port",
              "value": "20221"
            }
          ]
        }
      ]
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18

    返回

    {
      "message": "success"
    }
    
    1
    2
    3

    # 生产环境

    请求

    POST /openapi/environments/production/service/yaml?projectKey=<项目标识>
    
    1

    Body 参数说明

    参数名说明类型必填
    env_key环境标识string是
    service_list需要加入环境的服务列表[]Service是

    Service 参数说明

    参数名说明类型必填
    service_name服务名称string是
    variable_kvs服务变量列表[]VariableKV否

    VariableKV 参数说明

    参数名说明类型必填
    key变量的键string是
    value变量的值string当 use_global_variable 为 true 时无需设置
    use_global_variable是否使用环境全局变量bool设置为 true 时,value 参数无效

    Body 参数示例

    点击查看
    {
      "env_key": "dev",
      "service_list": [
        {
          "service_name": "service2",
          "variable_kvs": [
            {
              "key": "cpuLimit",
              "use_global_variable":true
            },
            {
              "key": "port",
              "value": "20221"
            }
          ]
        }
      ]
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18

    返回

    {
      "message": "success"
    }
    
    1
    2
    3

    # 更新服务

    适用于 K8s YAML 项目。

    # 测试环境

    请求

    PUT /openapi/environments/<环境标识>/services?projectKey=<项目标识>
    
    1

    Query 参数说明

    参数名说明类型必填
    projectKey项目标识string是

    Body 参数说明

    参数名说明类型必填
    service_list服务变量列表[]Service是

    Service 参数说明

    参数名说明类型必填
    service_name服务名称string是
    variable_kvs服务变量列表[]VariableKV否

    Body 参数示例

    点击查看
    {
        "service_list": [
        {
          "service_name": "service2",
          "variable_kvs": [
            {
              "key": "cpu",
              "value": "4m",
              "use_global_variable":true
            }
          ]
        }
      ]
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14

    返回

    {
      "message": "success"
    }
    
    1
    2
    3

    # 生产环境

    请求

    PUT /openapi/environments/production/<环境标识>/services?projectKey=<项目标识>
    
    1

    Query 参数说明

    参数名说明类型必填
    projectKey项目标识string是

    Body 参数说明

    参数名说明类型必填
    service_list服务变量列表[]Service是

    Service 参数说明

    参数名说明类型必填
    service_name服务名称string是
    variable_kvs服务变量列表[]VariableKV否

    Body 参数示例

    点击查看
    {
        "service_list": [
        {
          "service_name": "service2",
          "variable_kvs": [
            {
              "key": "cpu",
              "value": "4m",
              "use_global_variable":true
            }
          ]
        }
      ]
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14

    返回

    {
      "message": "success"
    }
    
    1
    2
    3

    # 删除服务

    适用于 K8s YAML 项目。

    # 测试环境

    请求

    DELETE /openapi/environments/service/yaml?projectKey=<项目标识>
    
    1

    Body 参数说明

    参数名说明类型必填
    env_key环境标识string是
    service_names需要从环境中删除的服务列表[]string是

    返回

    {
      "message": "success"
    }
    
    1
    2
    3

    # 生产环境

    请求

    DELETE /openapi/environments/production/service/yaml?projectKey=<项目标识>
    
    1

    Query 参数说明

    参数名说明类型必填
    projectKey项目标识string是

    Body 参数说明

    参数名说明类型必填
    env_key环境标识string是
    service_names需要从环境中删除的服务列表[]string是

    返回

    {
      "message": "success"
    }
    
    1
    2
    3

    # 查看全局变量

    适用于 K8s YAML 项目。

    # 测试环境

    请求

    GET /openapi/environments/<环境标识>/variable?projectKey=<项目标识>
    
    1

    Query 参数说明

    参数名说明类型必填
    projectKey项目标识string是

    返回示例

    点击查看
    [
        {
            "key": "cpuLimit",                           # 全局变量的键
            "value": "1000m",                            # 全局变量的值
            "type": "string",                            # 全局变量的类型,包括 string、bool、yaml、enum 四种
            "options": [],                               # type 为 enum 时,全局变量的可选值
            "desc": "CPU Limit",                         # 全局变量描述
            "related_services": ["service1", "service2"] # 关联服务列表
        }
    ]
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10

    # 生产环境

    请求

    GET /openapi/environments/production/<环境标识>/variable?projectKey=<项目标识>
    
    1

    Query 参数说明

    参数名说明类型必填
    projectKey项目标识string是

    返回示例

    点击查看
    [
        {
            "key": "cpuLimit",                           # 全局变量的键
            "value": "1000m",                            # 全局变量的值
            "type": "string",                            # 全局变量的类型,包括 string、bool、yaml、enum 四种
            "options": [],                               # type 为 enum 时,全局变量的可选值
            "desc": "CPU Limit",                         # 全局变量描述
            "related_services": ["service1", "service2"] # 关联服务列表
        }
    ]
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10

    # 更新全局变量

    提示

    1. 适用于 K8s YAML 项目。
    2. 更新全局变量后,关联的服务会同步更新。

    # 测试环境

    请求

    PUT /openapi/environments/<环境标识>/variable?projectKey=<项目标识>
    
    1

    Query 参数说明

    参数名说明类型必填
    projectKey项目标识string是

    Body 参数说明

    参数名说明类型必填
    global_variables需要更新的全局变量列表[]VariableKV是

    VariableKV 参数说明

    参数名说明类型必填
    key变量的键string是
    value变量的值string是

    返回

    {
      "message": "success"
    }
    
    1
    2
    3

    # 生产环境

    请求

    PUT /openapi/environments/production/<环境标识>/variable?projectKey=<项目标识>
    
    1

    Query 参数说明

    参数名说明类型必填
    projectKey项目标识string是

    Body 参数说明

    参数名说明类型必填
    global_variables需要更新的全局变量列表[]VariableKV是

    VariableKV 参数说明

    参数名说明类型必填
    key变量的键string是
    value变量的值string是

    返回

    {
      "message": "success"
    }
    
    1
    2
    3

    # 添加环境配置

    适用于 K8s YAML 项目。

    # 测试环境

    请求

    POST /openapi/environments/<环境标识>/envcfgs?projectKey=<项目标识>
    
    1

    Query 参数说明

    参数名说明类型必填
    projectKey项目标识string是

    Body 参数说明

    参数名说明类型必填
    name环境配置的名称string是
    common_env_cfg_type环境配置的类型,可选值如下:
    ConfigMap
    Ingress
    Secret
    PVC
    string是
    yaml_data环境配置的内容string是

    Body 示例

    点击查看
    {
        "name": "game-demo",
        "common_env_cfg_type": "ConfigMap",
        "yaml_data": "apiVersion: v1\nkind: ConfigMap\nmetadata:\n  name: game-demo\ndata:\n  player_initial_lives: \"3\"\n  ui_properties_file_name: \"user-interface.properties\"\n  game.properties: |\n    enemy.types=aliens,monsters\n    player.maximum-lives=5    \n  user-interface.properties: |\n    color.good=purple\n    color.bad=yellow\n    allow.textmode=true"
    }
    
    1
    2
    3
    4
    5

    返回

    {
      "message": "success"
    }
    
    1
    2
    3

    # 生产环境

    请求

    POST /openapi/environments/production/<环境标识>/envcfgs?projectKey=<项目标识>
    
    1

    Query 参数说明

    参数名说明类型必填
    projectKey项目标识string是

    Body 参数说明

    参数名说明类型必填
    name环境配置的名称string是
    common_env_cfg_type环境配置的类型,可选值如下:
    ConfigMap
    Ingress
    Secret
    PVC
    string是
    yaml_data环境配置的内容string是

    Body 示例

    点击查看
    {
        "name": "game-demo",
        "common_env_cfg_type": "ConfigMap",
        "yaml_data": "apiVersion: v1\nkind: ConfigMap\nmetadata:\n  name: game-demo\ndata:\n  player_initial_lives: \"3\"\n  ui_properties_file_name: \"user-interface.properties\"\n  game.properties: |\n    enemy.types=aliens,monsters\n    player.maximum-lives=5    \n  user-interface.properties: |\n    color.good=purple\n    color.bad=yellow\n    allow.textmode=true"
    }
    
    1
    2
    3
    4
    5

    返回

    {
      "message": "success"
    }
    
    1
    2
    3

    # 查看环境配置列表

    适用于 K8s YAML 项目。

    # 测试环境

    请求

    GET /openapi/environments/<环境标识>/envcfgs?projectKey=<项目标识>&type=<环境配置的类型>
    
    1

    Query 参数说明

    参数名说明类型必填
    projectKey项目标识string是
    type环境配置的类型,可选值如下:
    ConfigMap
    Ingress
    Secret
    PVC
    string是

    返回示例

    点击查看
    [
        {
            "name": "game-demo",                # 环境配置的名称
            "env_name": "dev",                  # 环境名称
            "project_name": "simple-demo",      # 项目标识
            "common_env_cfg_type": "ConfigMap", # 环境配置的类型
        },
        {
            "name": "istio-ca-root-cert",
            "env_name": "dev",
            "project_name": "simple-demo",
            "common_env_cfg_type": "ConfigMap",
            "update_time": 1687259964
        }
    ]
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15

    # 生产环境

    请求

    GET /openapi/environments/production/<环境标识>/envcfgs?projectKey=<项目标识>&type=<环境配置的类型>
    
    1

    Query 参数说明

    参数名说明类型必填
    projectKey项目标识string是
    type环境配置的类型,可选值如下:
    ConfigMap
    Ingress
    Secret
    PVC
    string是

    返回示例

    点击查看
    [
        {
            "name": "game-demo",                # 环境配置的名称
            "env_name": "dev",                  # 环境名称
            "project_name": "simple-demo",      # 项目标识
            "common_env_cfg_type": "ConfigMap", # 环境配置的类型
        },
        {
            "name": "istio-ca-root-cert",
            "env_name": "dev",
            "project_name": "simple-demo",
            "common_env_cfg_type": "ConfigMap",
            "update_time": 1687259964
        }
    ]
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15

    # 查看环境配置详情

    适用于 K8s YAML 项目。

    # 测试环境

    请求

    GET /openapi/environments/<环境标识>/envcfg/<环境配置名称>?projectKey=<项目标识>&type=<环境配置的类型>
    
    1

    Query 参数说明

    参数名说明类型必填
    projectKey项目标识string是
    type环境配置的类型,可选值如下:
    ConfigMap
    Ingress
    Secret
    PVC
    string是

    返回示例

    手动输入的环境配置示例
    {
       "configMap_detail": { // configMap环境配置资源详情,其他资源类型此处的key为:ingress_detail、secret_detail、pvc_detail
          "name": "istio-ca-root-cert",          # 环境配置的名称
          "common_env_cfg_type": "ConfigMap",    # 环境配置的类型
          "created_time": 1686225615,            # 环境配置的创建时间,Unix 时间戳格式
          "env_key": "dev",                      # 环境标识
          "product_key": "simple-demo",         # 项目标识
          "yaml_data": ".......",                # 环境配置的 YAML 内容,string 格式
          "source_detail": {                     # 代码库配置,环境配置是从代码库导入时该字段有信息
              "git_repo_config": {
                  "codehost_key": "kr-test",     # 代码源标识
                  "namespace": "kr-test-org1",   # 组织名/用户名
                  "owner": "kr-test-org1",       # 代码库拥有者
                  "repo": "config-data",         # 代码库
                  "branch": "main",              # 代码分支
              },
              "load_path": "cm.yaml",            # 文件路径
              "auto_sync": true                  # 自动同步开关
          }
    	}
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21

    # 生产环境

    请求

    GET /openapi/environments/production/<环境标识>/envcfg/<环境配置名称>?projectKey=<项目标识>&type=<环境配置的类型>
    
    1

    Query 参数说明

    参数名说明类型必填
    projectKey项目标识string是
    type环境配置的类型,可选值如下:
    ConfigMap
    Ingress
    Secret
    PVC
    string是

    返回示例

    手动输入的环境配置示例
    {
      "configMap_detail": { // configMap环境配置资源详情,其他资源类型此处的key为:ingress_detail、secret_detail、pvc_detail
          "name": "istio-ca-root-cert",          # 环境配置的名称
          "common_env_cfg_type": "ConfigMap",    # 环境配置的类型
          "created_time": 1686225615,            # 环境配置的创建时间,Unix 时间戳格式
          "env_key": "dev",                      # 环境标识
          "product_key": "simple-demo",          # 项目标识
          "yaml_data": ".......",                # 环境配置的 YAML 内容,string 格式
          "source_detail": {                     # 代码库配置,环境配置是从代码库导入时该字段有信息
              "git_repo_config": {
                  "codehost_key": "kr-test",     # 代码源标识
                  "namespace": "kr-test-org1",   # 组织名/用户名
                  "owner": "kr-test-org1",       # 代码库拥有者
                  "repo": "config-data",         # 代码库
                  "branch": "main",              # 代码分支
              },
              "load_path": "cm.yaml",            # 文件路径
              "auto_sync": true                  # 自动同步开关
          }
    	}
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21

    # 更新环境配置

    适用于 K8s YAML 项目。

    请求

    PUT /openapi/environments/envcfgs?projectKey=<项目标识>
    
    1

    Query 参数说明

    参数名说明类型必填
    projectKey项目标识string是

    Body 参数说明

    参数名说明类型必填
    name要被更新的配置名称string是
    env_key环境标识string是
    common_env_cfg_type环境配置的类型,可选值如下:Secret、ConfigMap、PVC、Ingressstring是
    yaml_data配置的 YAML 内容string是

    Body 参数示例

    点击查看
    {
        "name":"game-demo",
        "env_key":"dev",
        "common_env_cfg_type":"ConfigMap",
        "yaml_data": "apiVersion: v1\nkind: ConfigMap\nmetadata:\n  name: game-demo\ndata:\n  player_initial_lives: \"3\"\n  ui_properties_file_name: \"user-interface.properties\"\n\n  game.properties: |\n    enemy.types=aliens,monsters\n    player.maximum-lives=25    \n  user-interface.properties: |\n    color.good=purple\n    color.bad=yellow\n    allow.textmode=true    "
    }
    
    1
    2
    3
    4
    5
    6

    返回

    {
      "message": "success"
    }
    
    1
    2
    3

    # 删除环境配置

    适用于 K8s YAML 项目。

    # 测试环境

    # 请求

    DELETE /openapi/environments/<环境标识>/envcfg/<环境配置名称>?projectKey=<项目标识>&type=<环境配置的类型>
    
    1

    # Query 参数说明

    参数名说明类型必填
    projectKey项目标识string是
    type环境配置的类型,可选值如下:
    ConfigMap
    Ingress
    Secret
    PVC
    string是

    # 返回

    {
      "message": 200
    }
    
    1
    2
    3

    # 生产环境

    # 请求

    DELETE /openapi/environments/production/<环境标识>/envcfg/<环境配置名称>?projectKey=<项目标识>&type=<环境配置的类型>
    
    1

    # Query 参数说明

    参数名说明类型必填
    projectKey项目标识string是
    type环境配置的类型,可选值如下:
    ConfigMap
    Ingress
    Secret
    PVC
    string是

    # 返回

    {
      "message": 200
    }
    
    1
    2
    3

    # 调整服务实例副本数

    # 请求

    POST /openapi/environments/scale
    
    1

    # Body 参数说明

    参数名说明类型必填
    project_key项目标识string是
    env_key环境名称string是
    workload_name服务实例名称string是
    workload_type服务实例类型,可选项:Deployment、StatefulSetstring是
    target_replicas目标副本数量int是

    # Body 参数示例

    调整 microservice-demo 项目,dev 环境的 backend 服务副本数为 3:

    {
        "project_key": "microservice-demo",
        "env_key": "dev",
        "workload_name": "backend",
        "workload_type": "Deployment",
        "target_replicas": 3
    }
    
    1
    2
    3
    4
    5
    6
    7

    # 返回

    {
      "message": "success"
    }
    
    1
    2
    3

    # 重启服务实例

    # 测试环境

    # 请求

    POST /openapi/environments/<环境标识>/service/<服务名称>/restart?projectKey=<项目标识>
    
    1

    # 返回

    {
      "message": "success"
    }
    
    1
    2
    3

    # 生产环境

    # 请求

    POST /openapi/environments/production/<环境标识>/service/<服务名称>/restart?projectKey=<项目标识>
    
    1

    # 返回

    {
      "message": "success"
    }
    
    1
    2
    3

    # 更新镜像

    # 更新 Deployment 镜像

    # 请求

    POST /openapi/environments/image/deployment/<环境标识>
    
    1

    # Body 参数说明

    参数名说明类型必填
    product_name项目标识string是
    env_name环境名称string是
    service_name服务名称string是
    nameDeployment名称string是
    container_name容器名称string是
    image镜像string是

    # Body 参数示例

    {
        "product_name":"patrick-dev1-k8s-1",
        "service_name":"service1",
        "container_name":"service1",
        "name":"service1",
        "image":"koderover.tencentcloudcr.com/test/service1:20231116105254-6-main",
        "env_name":"dev2"
    }
    
    1
    2
    3
    4
    5
    6
    7
    8

    # 返回

    {
      "message": "success"
    }
    
    1
    2
    3

    # 更新 Statefulset 镜像

    # 请求

    POST /openapi/environments/image/statefulset/<环境标识>
    
    1

    # Body 参数说明

    参数名说明类型必填
    product_name项目标识string是
    env_name环境名称string是
    service_name服务名称string是
    nameDeployment名称string是
    container_name容器名称string是
    image镜像string是

    # Body 参数示例

    {
        "product_name":"patrick-dev1-k8s-1",
        "service_name":"service1",
        "container_name":"service1",
        "name":"service1",
        "image":"koderover.tencentcloudcr.com/test/service1:20231116105254-6-main",
        "env_name":"dev2"
    }
    
    1
    2
    3
    4
    5
    6
    7
    8

    # 返回

    {
      "message": "success"
    }
    
    1
    2
    3

    # 更新 Cronjob 镜像

    # 请求

    POST /openapi/environments/image/cronjob/<环境标识>
    
    1

    # Body 参数说明

    参数名说明类型必填
    product_name项目标识string是
    env_name环境名称string是
    service_name服务名称string是
    nameDeployment名称string是
    container_name容器名称string是
    image镜像string是

    # Body 参数示例

    {
        "product_name":"patrick-dev1-k8s-1",
        "service_name":"service1",
        "container_name":"service1",
        "name":"service1",
        "image":"koderover.tencentcloudcr.com/test/service1:20231116105254-6-main",
        "env_name":"dev2"
    }
    
    1
    2
    3
    4
    5
    6
    7
    8

    # 返回

    {
      "message": "success"
    }
    
    1
    2
    3

    # 列出事件

    # 请求

    GET /openapi/environments/kube/events
    
    1

    Query 参数说明

    参数名说明类型必填
    projectKey项目标识string是
    envName环境名称string是
    nameinvolvedObject名称string是
    typeinvolvedObject类型string是

    # 返回

    点击查看
    {
      [
        {
            "reason": "ScalingReplicaSet",
            "message": "Scaled up replica set service1-7cc994479d to 1",
            "first_seen": 1707396095,
            "last_seen": 1707396095,
            "count": 1,
            "type": "Normal"
        },
        {
            "reason": "ScalingReplicaSet",
            "message": "Scaled down replica set service1-67455dd499 to 0",
            "first_seen": 1707396102,
            "last_seen": 1707396102,
            "count": 1,
            "type": "Normal"
        }
      ]
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20

    # 子环境

    # 检查 Workload 的 K8S Service

    # 请求

    GET /openapi/environments/<环境标识>/check/workloads/k8sservices
    
    1

    Query 参数说明

    参数名说明类型必填
    projectKey项目标识string是

    # 返回

    点击查看
    ["service2.Deployment","service1.Deployment"]
    
    1

    # 开启子环境

    # 请求

    POST /openapi/environments/<环境标识>/share/enable
    
    1

    Query 参数说明

    参数名说明类型必填
    projectKey项目标识string是

    # 返回

    {
      "message": "success"
    }
    
    1
    2
    3

    # 关闭子环境

    # 请求

    DELETE /openapi/environments/<环境标识>/share/enable
    
    1

    Query 参数说明

    参数名说明类型必填
    projectKey项目标识string是

    # 返回

    {
      "message": "success"
    }
    
    1
    2
    3

    # 检查子环境 Ready

    # 请求

    GET /openapi/environments/:name/check/sharenv/:op/ready
    
    1

    路径参数说明

    参数名类型描述是否必须默认值
    namestring环境名称是无
    opstring操作类型,可选"enable"或"disable"是无

    Query 参数说明

    参数名说明类型必填
    projectKey项目标识string是

    # 返回

    点击查看
    {
      "is_ready": true,
      "checks": {
        "namespace_has_istio_label": false,
        "virtualservice_deployed": false,
        "pods_have_istio_proxy": false,
        "workloads_ready": true,
        "workloads_have_k8s_service": true
      }
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10

    # 获取入口服务

    # 请求

    GET /openapi/environments/:name/share/portal/:serviceName
    
    1

    路径参数说明

    参数名类型描述是否必须默认值
    namestring环境名称是无
    serviceNamestring服务名称是无

    Query 参数说明

    参数名说明类型必填
    projectKey项目标识string是

    返回

    点击查看
    {
      "default_gateway_address": "81.69.166.47",
      "servers": [
        {
          "host": "zcms-a-b1.8slan.com",
          "port_number": 80,
          "port_protocol": "HTTP"
        },
        {
          "host": "a.zicemoshi-helm-env-dev",
          "port_number": 80,
          "port_protocol": "HTTP"
        }
      ]
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15

    # 设置入口服务

    # 请求

    POST /openapi/environments/:name/share/portal/:serviceName
    
    1

    路径参数说明

    参数名类型描述是否必须默认值
    namestring环境名称是无
    serviceNamestring服务名称是无

    Query 参数说明

    参数名说明类型必填
    projectKey项目标识string是

    Body 参数说明

    类型必填
    []OpenAPISetPortalServiceRequest是

    OpenAPISetPortalServiceRequest 参数说明

    参数名说明类型必填
    host默认gateway地址,可能为ip或者域名string是
    port_number端口号uint32是
    port_protocol端口协议,HTTPstring是

    Body 示例

    点击查看
    [
      {
        "host": "zcms-a-b1.8slan.com",
        "port_number": 80,
        "port_protocol": "HTTP"
      },
      {
        "host": "a.zicemoshi-helm-env-dev",
        "port_number": 80,
        "port_protocol": "HTTP"
      }
    ]
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12

    返回

    {
      "message": "success"
    }
    
    1
    2
    3

    # 查看容器实时日志

    请求

    GET /openapi/logs/sse/pods/<pod名称>/containers/<容器名称>
    
    1

    Query 参数说明

    参数名说明类型必填
    projectKey项目标识string是
    envName环境名称string是
    tails日志tails行数string是

    返回示例

    点击查看

    该接口返回的是一个 SSE 流,返回的数据格式如下:

    "log message"
    
    1

    ← 工作流服务→

    资源
    教程
    论坛
    博客
    公司
    关于
    客户故事
    加入我们
    联系我们
    微信扫一扫
    hello@koderover.com

    © 2026 筑栈(上海)信息技术有限公司 沪 ICP 备 19000177 号 - 1

    •  跟随系统
    •  浅色模式
    •  深色模式
    •  阅读模式